package com.innodealing.constants;

/**
 * 应用程序常量
 * 
 * @author 系统生成
 * @date 2024/12/18
 */
public final class AppConstants {
    
    private AppConstants() {
        // 私有构造函数，防止实例化
    }
    
    /**
     * 作业相关常量
     */
    public static final class Job {
        public static final String JOB_NAME = "Bond Processing Job";
        public static final long DEFAULT_CHECKPOINT_INTERVAL = 30000L;
        public static final int DEFAULT_PARALLELISM = 1;
        
        private Job() {}
    }
    
    /**
     * 参数键名
     */
    public static final class ParameterKeys {
        public static final String PARALLELISM = "parallelism";
        public static final String KAFKA_BOOTSTRAP_SERVERS = "kafka.bootstrap.servers";
        public static final String MYSQL_URL = "mysql.url";
        public static final String MYSQL_USERNAME = "mysql.username";
        public static final String MYSQL_PASSWORD = "mysql.password";
        
        private ParameterKeys() {}
    }
    
    /**
     * State名称
     */
    public static final class StateNames {
        public static final String BOND_GROUP_STATE = "bondGroupState";
        public static final String BOND_USER_RULE_STATE = "bondUserRuleState";
        public static final String USERNAME_COUNT_STATE = "usernameCountState";
        
        private StateNames() {}
    }
} 